home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / gnu / nethack.lha / nethack-3.1 / include / eshk.h < prev    next >
C/C++ Source or Header  |  1993-01-17  |  1KB  |  47 lines

  1. /*    SCCS Id: @(#)eshk.h    3.1    93/01/06    */
  2. /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
  3. /* NetHack may be freely redistributed.  See license for details. */
  4.  
  5. #ifndef ESHK_H
  6. #define ESHK_H
  7.  
  8. #define REPAIR_DELAY    5     /* minimum delay between shop damage & repair */
  9.  
  10. #define BILLSZ    200
  11.  
  12. struct bill_x {
  13.     unsigned bo_id;
  14.     boolean useup;
  15.     long price;        /* price per unit */
  16.     long bquan;        /* amount used up */
  17. };
  18.  
  19. #include "dungeon.h"
  20.  
  21. struct eshk {
  22.     long robbed;        /* amount stolen by most recent customer */
  23.     long credit;        /* amount credited to customer */
  24.     long debit;        /* amount of debt for using unpaid items */
  25.     long loan;        /* shop-gold picked (part of debit) */
  26.     int shoptype;        /* the value of rooms[shoproom].rtype */
  27.     schar shoproom;        /* index in rooms; set by inshop() */
  28.     boolean following;    /* following customer since he owes us sth */
  29.     boolean surcharge;    /* angry shk inflates prices */
  30.     coord shk;        /* usual position shopkeeper */
  31.     coord shd;        /* position shop door */
  32.     d_level shoplevel;    /* level (& dungeon) of his shop */
  33.     int billct;        /* no. of entries of bill[] in use */
  34.     struct bill_x bill[BILLSZ];
  35.     struct bill_x *bill_p;
  36.     int visitct;        /* nr of visits by most recent customer */
  37.     char customer[PL_NSIZ];    /* most recent customer */
  38.     char shknam[PL_NSIZ];
  39. };
  40.  
  41. #define ESHK(mon)    ((struct eshk *)&(mon)->mextra[0])
  42.  
  43. #define NOTANGRY(mon)    ((mon)->mpeaceful)
  44. #define ANGRY(mon)    (!NOTANGRY(mon))
  45.  
  46. #endif /* ESHK_H */
  47.